int get_next_event_id();
void handle(enum event_type);
void advance_clock(long);
void handle_args(int argc, char *argv[]);
void active_process_advance_clock(long time_step);

void (*scheduler_init)();
void (*scheduler_add_to_queue)();
struct proc_info* (*scheduler_get_next)();
long (*scheduler_next_event_time)();
void (*scheduler_advance_clock)();
int (*scheduler_queue_empty)();
void (*scheduler_close)();
